#!/bin/bash
# Author: fanyongfeng
# 安装和配置java环境
# 操作系统：centos7/银河麒麟v10

# 使用root用户执行
[[ $(id -u) -ne 0 ]] && echo "请使用root用户执行此脚本" && exit 1

usage(){
    echo "Usage:"
    echo "sh $0 --version=版本号(默认安装1.8.0_301)"
    exit 1
}

#处理参数，规范化参数
ARGS=$(getopt -o h --long version:,help -n "$0" -- "$@")
if [[ $? != 0 || $# -eq 0 ]]
then
    usage
fi

#重新排列参数顺序
eval set -- "${ARGS}"
#通过shift和while循环处理参数
while true
do
    case $1 in
        --version)
            VERSION=$2
            shift 2
            ;;
        -h|-help)
            usage
            ;;
         --)
            shift
            break
            ;;
         *)
            echo "Internal error!"
            exit 1
            ;;
    esac
done

VERSION=${VERSION:-1.8.0_301}
INSTALL_DIR="/data/jdk1.8.0_301"
PKG_NAME="jdk-8u301-linux-x64.tar.gz"
[[ -f ${PKG_NAME} ]] || wget -4 https://repo.huaweicloud.com/java/jdk/8u301-b09/${PKG_NAME}
if [[ $? -ne 0 ]]
then
    echo "${PKG_NAME}下载失败，请重试或手动上传此安装包"
    exit 1
fi

tar zxf ${PKG_NAME} -C /data/
# 配置java环境变量
cat > /etc/profile.d/jdk.sh <<EOF
export JAVA_HOME=${INSTALL_DIR}
export PATH=\$PATH:\$JAVA_HOME/bin
EOF
source /etc/profile/jdk.sh